[INFO] cloning repository https://github.com/donjne/kiln
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/donjne/kiln" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdonjne%2Fkiln", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdonjne%2Fkiln'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3394843cd38f1bf45b33585c6272e9d20597c1f3
[INFO] testing donjne/kiln against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdonjne%2Fkiln" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/donjne/kiln
[INFO] finished tweaking git repo https://github.com/donjne/kiln
[INFO] tweaked toml for git repo https://github.com/donjne/kiln written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/donjne/kiln on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/donjne/kiln already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1154c3507350a0b3a505fa12d67bb0bf4066c1842d19f0a08d933a02f90e022d
[INFO] running `Command { std: "docker" "start" "-a" "1154c3507350a0b3a505fa12d67bb0bf4066c1842d19f0a08d933a02f90e022d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1154c3507350a0b3a505fa12d67bb0bf4066c1842d19f0a08d933a02f90e022d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1154c3507350a0b3a505fa12d67bb0bf4066c1842d19f0a08d933a02f90e022d", kill_on_drop: false }`
[INFO] [stdout] 1154c3507350a0b3a505fa12d67bb0bf4066c1842d19f0a08d933a02f90e022d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c6198c8d11e6164089c972d78fbb7097306600bd2d0ff4e31af7eba632bb2881
[INFO] running `Command { std: "docker" "start" "-a" "c6198c8d11e6164089c972d78fbb7097306600bd2d0ff4e31af7eba632bb2881", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling cfg-if v1.0.1
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling anstyle-query v1.1.3
[INFO] [stderr]    Compiling anstyle v1.0.11
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling clap_lex v0.7.5
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling colored v3.0.0
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling anstream v0.6.19
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling clap_builder v4.5.42
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling clap_derive v4.5.41
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling clap v4.5.42
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling kiln v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minimization_time`
[INFO] [stdout]    --> src/main.rs:398:17
[INFO] [stdout]     |
[INFO] [stdout] 398 |             let minimization_time = start_time.elapsed();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minimization_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.69s
[INFO] running `Command { std: "docker" "inspect" "c6198c8d11e6164089c972d78fbb7097306600bd2d0ff4e31af7eba632bb2881", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6198c8d11e6164089c972d78fbb7097306600bd2d0ff4e31af7eba632bb2881", kill_on_drop: false }`
[INFO] [stdout] c6198c8d11e6164089c972d78fbb7097306600bd2d0ff4e31af7eba632bb2881
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7e3b81516ec63949affe03fcfe31e97c84e2b5091ec2a2853dc2996a7910e059
[INFO] running `Command { std: "docker" "start" "-a" "7e3b81516ec63949affe03fcfe31e97c84e2b5091ec2a2853dc2996a7910e059", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling criterion-plot v0.6.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling kiln v1.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling criterion v0.7.0
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minimization_time`
[INFO] [stdout]    --> src/main.rs:398:17
[INFO] [stdout]     |
[INFO] [stdout] 398 |             let minimization_time = start_time.elapsed();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minimization_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BooleanExpr`, `OperatorInfo`, `ParseError`, `Parser`, and `Precedence`
[INFO] [stdout]  --> tests/tokens_test.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stdout]   |                              ^^^^^^^^^^^  ^^^^^^                ^^^^^^^^^^^^  ^^^^^^^^^^                               ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stdout]  --> tests/quine_mccluskey_tests.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, and `CanonicalTerm`
[INFO] [stdout]  --> tests/quine_mccluskey_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stdout]  --> tests/quine_mccluskey_tests.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> tests/quine_mccluskey_tests.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> tests/evaluation_error_tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BatchEvaluator`, `Evaluator`, `TruthRow`, `TruthTable`, and `evaluator::utils`
[INFO] [stdout]  --> tests/evaluation_error_tests.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^                ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 6 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stdout] 7 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stdout]   |            ^^^^^^^^^^^^^^                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorInfo`, `ParseError`, `Precedence`, and `Token`
[INFO] [stdout]  --> tests/parsing_tests.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^  ^^^^^^^^^^            ^^^^^              ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, `CanonicalForm`, and `CanonicalTerm`
[INFO] [stdout]  --> tests/minimization_errors.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stdout]  --> tests/minimization_errors.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kiln::parsing::BooleanExpr`
[INFO] [stdout]  --> tests/minimization_errors.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use kiln::parsing::BooleanExpr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> tests/minimization_errors.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stdout]  --> tests/minimization_errors.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kiln::evaluation::TruthTable`
[INFO] [stdout]  --> tests/minimization_errors.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use kiln::evaluation::TruthTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> tests/minimization_errors.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stdout]  --> tests/optimization_tests.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CanonicalConverter`
[INFO] [stdout]  --> tests/optimization_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kiln::evaluation::TruthTable`
[INFO] [stdout]   --> tests/optimization_tests.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use kiln::evaluation::TruthTable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> tests/optimization_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EvaluationError`, `TruthRow`, `TruthTable`, `contains_variable`, `count_variables`, `extract_variables_in_order`, `extract_variables`, and `validate_variable_completeness`
[INFO] [stdout]  --> tests/evaluator_tests.rs:4:41
[INFO] [stdout]   |
[INFO] [stdout] 4 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stdout]   |                                         ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 5 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BooleanExpr`, `OperatorInfo`, `Parser`, `Precedence`, `Token`, and `Tokenizer`
[INFO] [stdout]  --> tests/parsing_error_tests.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stdout]   |                              ^^^^^^^^^^^  ^^^^^^                ^^^^^^^^^^^^  ^^^^^^^^^^            ^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> tests/truth_table_tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BatchEvaluator`, `EvaluationError`, `Evaluator`, `contains_variable`, `count_variables`, `evaluator::utils`, `extract_variables_in_order`, `extract_variables`, and `validate_variable_completeness`
[INFO] [stdout]  --> tests/truth_table_tests.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stdout]   |            ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `evaluation::TruthTable`
[INFO] [stdout]   --> tests/generation_tests.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     evaluation::TruthTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stdout]  --> tests/canonical_forms.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stdout]  --> tests/canonical_forms.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> tests/canonical_forms.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stdout]  --> tests/canonical_forms.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> tests/canonical_forms.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BooleanExpr`, `ParseError`, `Parser`, and `Tokenizer`
[INFO] [stdout]  --> tests/precedence_tests.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stdout]   |                              ^^^^^^^^^^^  ^^^^^^                                                           ^^^^^^^^^   ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stdout]  --> tests/karnaugh_map_tests.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, and `CanonicalTerm`
[INFO] [stdout]  --> tests/karnaugh_map_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stdout]  --> tests/karnaugh_map_tests.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> tests/karnaugh_map_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `essential`
[INFO] [stdout]    --> tests/quine_mccluskey_tests.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let essential = chart.find_essential_prime_implicants();
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_essential`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/karnaugh_map_tests.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 280 |    let mut kmap = KarnaughMap::from_truth_table(&truth_table).unwrap();
[INFO] [stdout]     |        ----^^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 851 |        let mut rng = rand::thread_rng();
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stdout]     |
[INFO] [stdout] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stdout]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stdout]     |
[INFO] [stdout] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wire_counter`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let wire_counter = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `succ_node`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrival_times`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stdout]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stdout]     |
[INFO] [stdout] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_supported`
[INFO] [stdout]    --> src/minimization/errors.rs:267:71
[INFO] [stdout]     |
[INFO] [stdout] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minterm`
[INFO] [stdout]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stdout]     |
[INFO] [stdout] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variable`
[INFO] [stdout]    --> src/evaluation/errors.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stdout]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `minimization_time`
[INFO] [stdout]    --> src/main.rs:398:17
[INFO] [stdout]     |
[INFO] [stdout] 398 |             let minimization_time = start_time.elapsed();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minimization_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stdout]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl TimingAnalyzer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_token` is never used
[INFO] [stdout]   --> src/parsing/parser.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 22.67s
[INFO] running `Command { std: "docker" "inspect" "7e3b81516ec63949affe03fcfe31e97c84e2b5091ec2a2853dc2996a7910e059", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7e3b81516ec63949affe03fcfe31e97c84e2b5091ec2a2853dc2996a7910e059", kill_on_drop: false }`
[INFO] [stdout] 7e3b81516ec63949affe03fcfe31e97c84e2b5091ec2a2853dc2996a7910e059
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 85fc8abc1dbf840c4fa0b5c31ebbeeeba9f46ec7ad65a644907d64d71d148803
[INFO] running `Command { std: "docker" "start" "-a" "85fc8abc1dbf840c4fa0b5c31ebbeeeba9f46ec7ad65a644907d64d71d148803", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stderr]    --> src/generation/testbench_generator.rs:851:28
[INFO] [stderr]     |
[INFO] [stderr] 851 |        let mut rng = rand::thread_rng();
[INFO] [stderr]     |                            ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stderr]    --> src/generation/testbench_generator.rs:177:33
[INFO] [stderr]     |
[INFO] [stderr] 177 |                 inputs.push(rng.gen_bool(0.5));
[INFO] [stderr]     |                                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `rand::Rng::gen_bool`: Renamed to `random_bool`
[INFO] [stderr]    --> src/generation/testbench_generator.rs:858:32
[INFO] [stderr]     |
[INFO] [stderr] 858 |                inputs.push(rng.gen_bool(0.5));
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `variable`
[INFO] [stderr]    --> src/evaluation/errors.rs:113:54
[INFO] [stderr]     |
[INFO] [stderr] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stderr]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `max_supported`
[INFO] [stderr]    --> src/minimization/errors.rs:267:71
[INFO] [stderr]     |
[INFO] [stderr] 267 |             MinimizationErrorKind::TooManyVariables { variable_count, max_supported, algorithm } => {
[INFO] [stderr]     |                                                                       ^^^^^^^^^^^^^ help: try ignoring the field: `max_supported: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `minterm`
[INFO] [stderr]    --> src/minimization/quine_mccluskey.rs:172:28
[INFO] [stderr]     |
[INFO] [stderr] 172 |         for (minterm_idx, &minterm) in self.minterms.iter().enumerate() {
[INFO] [stderr]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minterm`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stderr]     |
[INFO] [stderr] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stderr]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `wire_counter`
[INFO] [stderr]    --> src/generation/verilog_generator.rs:273:13
[INFO] [stderr]     |
[INFO] [stderr] 273 |         let wire_counter = 0;
[INFO] [stderr]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wire_counter`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/generation/verilog_generator.rs:401:14
[INFO] [stderr]     |
[INFO] [stderr] 401 |         for (i, var) in truth_table.variables.iter().enumerate() {
[INFO] [stderr]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `succ_node`
[INFO] [stderr]    --> src/generation/timing_analysis.rs:322:21
[INFO] [stderr]     |
[INFO] [stderr] 322 |                 let succ_node = &graph.nodes[&succ_id];
[INFO] [stderr]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_succ_node`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `arrival_times`
[INFO] [stderr]    --> src/generation/timing_analysis.rs:401:61
[INFO] [stderr]     |
[INFO] [stderr] 401 | ...aph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>) -> GenerationResult<HashMap<NodeId, f64>> {
[INFO] [stderr]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrival_times`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `count`
[INFO] [stderr]    --> src/generation/timing_analysis.rs:574:93
[INFO] [stderr]     |
[INFO] [stderr] 574 |     fn find_longest_paths(&self, graph: &TimingGraph, arrival_times: &HashMap<NodeId, f64>, count: usize) -> Vec<TimingPath> {
[INFO] [stderr]     |                                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `graph`
[INFO] [stderr]    --> src/generation/timing_analysis.rs:737:57
[INFO] [stderr]     |
[INFO] [stderr] 737 |     pub fn suggest_optimizations(report: &TimingReport, graph: &TimingGraph) -> Vec<OptimizationSuggestion> {
[INFO] [stderr]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stderr] 
[INFO] [stderr] warning: method `expect_token` is never used
[INFO] [stderr]   --> src/parsing/parser.rs:77:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | impl Parser {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stderr]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stderr]     |
[INFO] [stderr]  34 | impl TimingAnalyzer {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `kiln` (lib) generated 15 warnings (run `cargo fix --lib -p kiln` to apply 10 suggestions)
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/generation/verilog_generator.rs:194:14
[INFO] [stderr]     |
[INFO] [stderr] 194 |         for (i, row) in truth_table.rows.iter().enumerate() {
[INFO] [stderr]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `variable`
[INFO] [stderr]    --> src/evaluation/errors.rs:113:54
[INFO] [stderr]     |
[INFO] [stderr] 113 |             EvaluationErrorKind::UndefinedVariable { variable, available_variables } => {
[INFO] [stderr]     |                                                      ^^^^^^^^ help: try ignoring the field: `variable: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `minimization_time`
[INFO] [stderr]    --> src/main.rs:398:17
[INFO] [stderr]     |
[INFO] [stderr] 398 |             let minimization_time = start_time.elapsed();
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_minimization_time`
[INFO] [stderr] 
[INFO] [stderr] warning: method `calculate_arrival_time_recursive` is never used
[INFO] [stderr]    --> src/generation/timing_analysis.rs:355:8
[INFO] [stderr]     |
[INFO] [stderr]  34 | impl TimingAnalyzer {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 355 |     fn calculate_arrival_time_recursive(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `expect_token` is never used
[INFO] [stderr]   --> src/parsing/parser.rs:77:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | impl Parser {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 77 |     fn expect_token(&mut self, expected: &[&str]) -> ParseResult<Token> {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `kiln` (bin "kiln") generated 16 warnings (11 duplicates) (run `cargo fix --bin "kiln" -p kiln` to apply 3 suggestions)
[INFO] [stderr] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stderr]  --> tests/karnaugh_map_tests.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, and `CanonicalTerm`
[INFO] [stderr]  --> tests/karnaugh_map_tests.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stderr]  --> tests/karnaugh_map_tests.rs:5:43
[INFO] [stderr]   |
[INFO] [stderr] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stderr]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> tests/karnaugh_map_tests.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/karnaugh_map_tests.rs:280:8
[INFO] [stderr]     |
[INFO] [stderr] 280 |    let mut kmap = KarnaughMap::from_truth_table(&truth_table).unwrap();
[INFO] [stderr]     |        ----^^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> tests/evaluation_error_tests.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BatchEvaluator`, `Evaluator`, `TruthRow`, `TruthTable`, and `evaluator::utils`
[INFO] [stderr]  --> tests/evaluation_error_tests.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^                ^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 6 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stderr] 7 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stderr]   |            ^^^^^^^^^^^^^^                   ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stderr]  --> tests/canonical_forms.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stderr]  --> tests/canonical_forms.rs:5:43
[INFO] [stderr]   |
[INFO] [stderr] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stderr]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> tests/canonical_forms.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stderr]  --> tests/canonical_forms.rs:8:41
[INFO] [stderr]   |
[INFO] [stderr] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stderr]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> tests/canonical_forms.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EvaluationError`, `TruthRow`, `TruthTable`, `contains_variable`, `count_variables`, `extract_variables_in_order`, `extract_variables`, and `validate_variable_completeness`
[INFO] [stderr]  --> tests/evaluator_tests.rs:4:41
[INFO] [stderr]   |
[INFO] [stderr] 4 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stderr]   |                                         ^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 5 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 6 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stderr]   |                            ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `evaluation::TruthTable`
[INFO] [stderr]   --> tests/generation_tests.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     evaluation::TruthTable,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stderr]  --> tests/optimization_tests.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CanonicalConverter`
[INFO] [stderr]  --> tests/optimization_tests.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `kiln::evaluation::TruthTable`
[INFO] [stderr]   --> tests/optimization_tests.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use kiln::evaluation::TruthTable;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> tests/optimization_tests.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorInfo`, `ParseError`, `Precedence`, and `Token`
[INFO] [stderr]  --> tests/parsing_tests.rs:1:65
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stderr]   |                                                                 ^^^^^^^^^^^^  ^^^^^^^^^^            ^^^^^              ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BooleanExpr`, `OperatorInfo`, `Parser`, `Precedence`, `Token`, and `Tokenizer`
[INFO] [stderr]  --> tests/parsing_error_tests.rs:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stderr]   |                              ^^^^^^^^^^^  ^^^^^^                ^^^^^^^^^^^^  ^^^^^^^^^^            ^^^^^  ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> tests/truth_table_tests.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BatchEvaluator`, `EvaluationError`, `Evaluator`, `contains_variable`, `count_variables`, `evaluator::utils`, `extract_variables_in_order`, `extract_variables`, and `validate_variable_completeness`
[INFO] [stderr]  --> tests/truth_table_tests.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |         evaluator::utils, truth_table::{TruthRow, TruthTable}, variable_extraction::{
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 6 |             contains_variable, count_variables, extract_variables, extract_variables_in_order, validate_variable_completeness
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 7 |         }, BatchEvaluator, EvaluationError, Evaluator
[INFO] [stderr]   |            ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MinimizationError` and `helpers`
[INFO] [stderr]  --> tests/quine_mccluskey_tests.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::minimization::{MinimizationError, helpers};
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^  ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, and `CanonicalTerm`
[INFO] [stderr]  --> tests/quine_mccluskey_tests.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stderr]  --> tests/quine_mccluskey_tests.rs:8:41
[INFO] [stderr]   |
[INFO] [stderr] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stderr]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> tests/quine_mccluskey_tests.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `essential`
[INFO] [stderr]    --> tests/quine_mccluskey_tests.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |     let essential = chart.find_essential_prime_implicants();
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_essential`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalConverter`, `CanonicalExpression`, `CanonicalForm`, and `CanonicalTerm`
[INFO] [stderr]  --> tests/minimization_errors.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     CanonicalConverter, CanonicalForm, CanonicalTerm, CanonicalExpression
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `PrimeImplicantChart`, `QMTerm`, and `QuineMcCluskey`
[INFO] [stderr]  --> tests/minimization_errors.rs:5:43
[INFO] [stderr]   |
[INFO] [stderr] 5 | use kiln::minimization::quine_mccluskey::{QuineMcCluskey, QMTerm, PrimeImplicantChart};
[INFO] [stderr]   |                                           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `kiln::parsing::BooleanExpr`
[INFO] [stderr]  --> tests/minimization_errors.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use kiln::parsing::BooleanExpr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> tests/minimization_errors.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `KMapGroup`, `KMapPosition`, `KarnaughMapMinimizer`, and `KarnaughMap`
[INFO] [stderr]  --> tests/minimization_errors.rs:8:41
[INFO] [stderr]   |
[INFO] [stderr] 8 | use kiln::minimization::karnaugh_maps::{KarnaughMapMinimizer, KarnaughMap, KMapPosition, KMapGroup};
[INFO] [stderr]   |                                         ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `kiln::evaluation::TruthTable`
[INFO] [stderr]  --> tests/minimization_errors.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use kiln::evaluation::TruthTable;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> tests/minimization_errors.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BooleanExpr`, `ParseError`, `Parser`, and `Tokenizer`
[INFO] [stderr]  --> tests/precedence_tests.rs:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stderr]   |                              ^^^^^^^^^^^  ^^^^^^                                                           ^^^^^^^^^   ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BooleanExpr`, `OperatorInfo`, `ParseError`, `Parser`, and `Precedence`
[INFO] [stderr]  --> tests/tokens_test.rs:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | use kiln::parsing::{parser::{BooleanExpr, Parser}, precedence::{OperatorInfo, Precedence}, tokens::{Token, Tokenizer}, ParseError};
[INFO] [stderr]   |                              ^^^^^^^^^^^  ^^^^^^                ^^^^^^^^^^^^  ^^^^^^^^^^                               ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `kiln` (test "karnaugh_map_tests") generated 5 warnings (run `cargo fix --test "karnaugh_map_tests" -p kiln` to apply 5 suggestions)
[INFO] [stderr] warning: `kiln` (test "evaluation_error_tests") generated 2 warnings (run `cargo fix --test "evaluation_error_tests" -p kiln` to apply 2 suggestions)
[INFO] [stderr] warning: `kiln` (lib test) generated 15 warnings (15 duplicates)
[INFO] [stderr] warning: `kiln` (bin "kiln" test) generated 16 warnings (16 duplicates)
[INFO] [stderr] warning: `kiln` (test "canonical_forms") generated 5 warnings (run `cargo fix --test "canonical_forms" -p kiln` to apply 5 suggestions)
[INFO] [stderr] warning: `kiln` (test "evaluator_tests") generated 1 warning (run `cargo fix --test "evaluator_tests" -p kiln` to apply 1 suggestion)
[INFO] [stderr] warning: `kiln` (test "generation_tests") generated 1 warning (run `cargo fix --test "generation_tests" -p kiln` to apply 1 suggestion)
[INFO] [stderr] warning: `kiln` (test "optimization_tests") generated 4 warnings (run `cargo fix --test "optimization_tests" -p kiln` to apply 4 suggestions)
[INFO] [stderr] warning: `kiln` (test "parsing_tests") generated 1 warning (run `cargo fix --test "parsing_tests" -p kiln` to apply 1 suggestion)
[INFO] [stderr] warning: `kiln` (test "parsing_error_tests") generated 1 warning (run `cargo fix --test "parsing_error_tests" -p kiln` to apply 1 suggestion)
[INFO] [stderr] warning: `kiln` (test "truth_table_tests") generated 2 warnings (run `cargo fix --test "truth_table_tests" -p kiln` to apply 2 suggestions)
[INFO] [stderr] warning: `kiln` (test "quine_mccluskey_tests") generated 5 warnings (run `cargo fix --test "quine_mccluskey_tests" -p kiln` to apply 5 suggestions)
[INFO] [stderr] warning: `kiln` (test "minimization_errors") generated 7 warnings (run `cargo fix --test "minimization_errors" -p kiln` to apply 7 suggestions)
[INFO] [stderr] warning: `kiln` (test "precedence_tests") generated 1 warning (run `cargo fix --test "precedence_tests" -p kiln` to apply 1 suggestion)
[INFO] [stderr] warning: `kiln` (test "tokens_test") generated 1 warning (run `cargo fix --test "tokens_test" -p kiln` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kiln-fa4bf78a3544d9bb)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test generation::errors::tests::test_invalid_module_name_with_suggestion ... ok
[INFO] [stdout] test generation::errors::tests::test_testbench_generation_error_with_partial ... ok
[INFO] [stdout] test generation::errors::tests::test_resource_exhaustion_with_suggestions ... ok
[INFO] [stdout] test generation::errors::tests::test_hdl_syntax_error ... ok
[INFO] [stdout] test generation::errors::tests::test_module_name_sanitization ... ok
[INFO] [stdout] test generation::errors::tests::test_helper_functions ... ok
[INFO] [stdout] test generation::errors::tests::test_unsupported_gate_error ... ok
[INFO] [stdout] test generation::errors::tests::test_timing_constraint_violation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kiln-88856b1f6ff4edb1)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test generation::errors::tests::test_module_name_sanitization ... ok
[INFO] [stdout] test generation::errors::tests::test_invalid_module_name_with_suggestion ... ok
[INFO] [stdout] test generation::errors::tests::test_testbench_generation_error_with_partial ... ok
[INFO] [stdout] test generation::errors::tests::test_timing_constraint_violation ... ok
[INFO] [stdout] test generation::errors::tests::test_unsupported_gate_error ... ok
[INFO] [stdout] test generation::errors::tests::test_hdl_syntax_error ... ok
[INFO] [stdout] test generation::errors::tests::test_helper_functions ... ok
[INFO] [stdout] test generation::errors::tests::test_resource_exhaustion_with_suggestions ... ok
[INFO] [stderr]      Running tests/canonical_forms.rs (/opt/rustwide/target/debug/deps/canonical_forms-4acf5d78f480592d)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test test_canonical_expression_deduplication ... ok
[INFO] [stdout] test test_canonical_expression_display ... ok
[INFO] [stdout] test test_canonical_expression_optimization_metrics ... ok
[INFO] [stdout] test test_canonical_form_detection ... ok
[INFO] [stdout] test test_canonical_form_conversion_round_trip ... ok
[INFO] [stdout] test test_canonical_term_covers ... ok
[INFO] [stdout] test test_canonical_term_creation ... ok
[INFO] [stdout] test test_canonical_term_from_truth_table_row ... ok
[INFO] [stdout] test test_canonical_form_detection_edge_cases ... ok
[INFO] [stdout] test test_canonical_term_to_boolean_expr ... ok
[INFO] [stdout] test test_complex_sop_conversion ... ok
[INFO] [stdout] test test_pos_conversion ... ok
[INFO] [stdout] test test_sop_conversion ... ok
[INFO] [stdout] test test_empty_canonical_expression ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/evaluation_error_tests.rs (/opt/rustwide/target/debug/deps/evaluation_error_tests-cd966abdc036656b)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test test_extract_duplicate_variables ... ok
[INFO] [stdout] test test_extract_single_variable ... ok
[INFO] [stdout] test test_extract_multiple_variables ... ok
[INFO] [stdout] test test_evaluation_stack_overflow_error ... ok
[INFO] [stdout] test test_count_variables ... ok
[INFO] [stdout] test test_extract_variables_in_order ... ok
[INFO] [stdout] test test_extract_variables_in_order_with_duplicates ... ok
[INFO] [stdout] test test_extract_with_constants ... ok
[INFO] [stdout] test test_inconsistent_variable_set_error ... ok
[INFO] [stdout] test test_invalid_truth_table_size_error ... ok
[INFO] [stdout] test test_extract_with_not ... ok
[INFO] [stdout] test test_undefined_variable_error ... ok
[INFO] [stdout] test test_undefined_variable_with_no_available_variables ... ok
[INFO] [stdout] test test_variable_ordering_consistency ... ok
[INFO] [stdout] test test_validate_variable_completeness_success ... ok
[INFO] [stdout] test test_variable_validation_edge_cases ... ok
[INFO] [stdout] test test_variable_search_in_nested_expression ... ok
[INFO] [stdout] test test_contains_variable ... ok
[INFO] [stdout] test test_complex_variable_extraction ... ok
[INFO] [stdout] test test_validate_variable_completeness_failure ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/evaluator_tests.rs (/opt/rustwide/target/debug/deps/evaluator_tests-b14e1ab7a5bd9708)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test test_and_expression_evaluation ... ok
[INFO] [stdout] test test_batch_error_context ... ok
[INFO] [stdout] test test_batch_evaluation ... ok
[INFO] [stdout] test test_complex_expression_evaluation ... ok
[INFO] [stdout] test test_exhaustive_evaluation ... ok
[INFO] [stdout] test test_ordered_assignments ... ok
[INFO] [stdout] test test_short_circuit_evaluation ... ok
[INFO] [stdout] test test_simple_variable_evaluation ... ok
[INFO] [stdout] test test_utils_contradiction_detection ... ok
[INFO] [stdout] test test_undefined_variable_error_for_evaluator ... ok
[INFO] [stdout] test test_recursion_depth_limit ... ok
[INFO] [stdout] test test_utils_tautology_detection ... ok
[INFO] [stdout] test test_utils_quick_eval ... ok
[INFO] [stdout] test test_utils_satisfiable_detection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/generation_tests.rs (/opt/rustwide/target/debug/deps/generation_tests-bbfade0b28a93352)
[INFO] [stdout] 
[INFO] [stdout] running 51 tests
[INFO] [stdout] test test_area_estimator_creation ... ok
[INFO] [stdout] test test_area_estimator_configuration ... ok
[INFO] [stdout] test test_cascading_error_scenarios ... ok
[INFO] [stdout] test test_complex_timing_violation_scenario ... ok
[INFO] [stdout] test test_constant_expressions ... ok
[INFO] [stdout] test test_error_context_preservation ... ok
[INFO] [stdout] test test_error_severity_implications ... ok
[INFO] [stdout] test test_gate_info_methods ... ok
[INFO] [stdout] test test_error_kind_equality_and_cloning ... ok
[INFO] [stdout] test test_gate_library_error_comprehensive ... ok
[INFO] [stdout] test test_gate_library_lookup ... ok
[INFO] [stdout] test test_helper_resource_optimization_suggestions ... ok
[INFO] [stdout] test test_helper_timing_violation_error ... ok
[INFO] [stdout] test test_gate_library_add_gate ... ok
[INFO] [stdout] test test_gate_library_creation ... ok
[INFO] [stdout] test test_module_name_sanitization_edge_cases ... ok
[INFO] [stdout] test test_helper_module_naming_error ... ok
[INFO] [stdout] test test_helper_resource_limit_error ... ok
[INFO] [stdout] test test_hdl_syntax_error_without_line_number ... ok
[INFO] [stdout] test test_partial_testbench_handling ... ok
[INFO] [stdout] test test_optimization_suggestion_quality ... ok
[INFO] [stdout] test test_port_mapping_conflict_resolution ... ok
[INFO] [stdout] test test_synthesis_target_mismatch_conversion_path ... ok
[INFO] [stdout] test test_single_variable_expression ... ok
[INFO] [stdout] test test_testbench_config_defaults ... ok
[INFO] [stdout] test test_resource_exhaustion_optimization_suggestions ... ok
[INFO] [stdout] test test_technology_mapping_comprehensive_failure ... ok
[INFO] [stdout] test test_testbench_generation_without_partial ... ok
[INFO] [stdout] test test_testbench_generator_creation ... ok
[INFO] [stdout] test test_timing_analyzer_creation ... ok
[INFO] [stdout] test test_timing_analyzer_with_constraints ... ok
[INFO] [stdout] test test_timing_report_methods ... ok
[INFO] [stdout] test test_timing_analysis_simple_expression ... ok
[INFO] [stdout] test test_timing_violation_percentage_calculation ... ok
[INFO] [stdout] test test_testbench_different_strategies ... ok
[INFO] [stdout] test test_testbench_generation_from_expression ... ok
[INFO] [stdout] test test_vhdl_generation_simple_and ... ok
[INFO] [stdout] test test_vhdl_different_styles ... ok
[INFO] [stdout] test test_unsupported_expression_structure_alternatives ... ok
[INFO] [stdout] test test_verilog_different_styles ... ok
[INFO] [stdout] test test_verilog_generation_simple_and ... ok
[INFO] [stdout] test test_verilog_generator_creation ... ok
[INFO] [stdout] test test_verilog_generator_configuration ... ok
[INFO] [stdout] test test_deeply_nested_expression ... ok
[INFO] [stdout] test test_vhdl_generator_configuration ... ok
[INFO] [stdout] test test_vhdl_generator_creation ... ok
[INFO] [stdout] test test_complex_expression_handling ... ok
[INFO] [stderr]      Running tests/karnaugh_map_tests.rs (/opt/rustwide/target/debug/deps/karnaugh_map_tests-4a0aa799dcf0bd8a)
[INFO] [stdout] test test_area_report_methods ... ok
[INFO] [stdout] test test_area_optimization_suggestions ... ok
[INFO] [stdout] test test_verilog_vhdl_both_work ... ok
[INFO] [stdout] test test_area_estimation_simple_expression ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 51 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test test_gray_code_conversion ... ok
[INFO] [stdout] test test_group_literal_count ... ok
[INFO] [stdout] test test_3_variable_kmap_minimization ... ok
[INFO] [stdout] test test_kmap_essential_prime_implicant_detection ... ok
[INFO] [stdout] test test_kmap_group_implication_calculation ... ok
[INFO] [stdout] test test_kmap_from_simple_expression ... ok
[INFO] [stdout] test test_4_variable_kmap_complex_case ... ok
[INFO] [stdout] test test_kmap_group_validation ... ok
[INFO] [stdout] test test_kmap_large_group_preference ... ok
[INFO] [stdout] test test_kmap_display ... ok
[INFO] [stdout] test test_kmap_minimization ... ok
[INFO] [stdout] test test_kmap_display_formatting ... ok
[INFO] [stdout] test test_kmap_position ... ok
[INFO] [stdout] test test_kmap_minimization_steps_detail ... ok
[INFO] [stdout] test test_kmap_position_to_variable_mapping ... ok
[INFO] [stdout] test test_kmap_single_variable_edge_case ... ok
[INFO] [stdout] test test_kmap_power_of_2_group_validation ... ok
[INFO] [stdout] test test_kmap_vs_truth_table_consistency ... ok
[INFO] [stdout] test test_kmap_wraparound_groups ... ok
[INFO] [stdout] test test_variable_limit_enforcement ... ok
[INFO] [stdout] test test_minimization_steps ... ok
[INFO] [stderr]      Running tests/minimization_errors.rs (/opt/rustwide/target/debug/deps/minimization_errors-fa431f9f75825667)
[INFO] [stdout] test test_kmap_empty_expression_handling ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test test_algorithm_specific_suggestions ... ok
[INFO] [stdout] test test_complex_minimization_error_scenarios ... ok
[INFO] [stdout] test test_error_context_preservation ... ok
[INFO] [stdout] test test_error_kind_display ... ok
[INFO] [stdout] test test_helper_functions ... ok
[INFO] [stdout] test test_cyclic_dependency_detection ... ok
[INFO] [stdout] test test_helper_memory_estimation ... ok
[INFO] [stdout] test test_incompatible_truth_table_error ... ok
[INFO] [stdout] test test_optimization_timeout_error ... ok
[INFO] [stderr]      Running tests/optimization_tests.rs (/opt/rustwide/target/debug/deps/optimization_tests-8be2c363ea93d9f5)
[INFO] [stdout] test test_minimization_failed_with_steps ... ok
[INFO] [stdout] test test_unsupported_operation_comprehensive ... ok
[INFO] [stdout] test test_too_many_variables_error ... ok
[INFO] [stdout] test test_memory_exhaustion_detailed_reporting ... ok
[INFO] [stdout] test test_invalid_canonical_form_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test test_algorithm_specific_data_management ... ok
[INFO] [stdout] test test_complexity_analysis ... ok
[INFO] [stdout] test test_bottleneck_identification ... ok
[INFO] [stdout] test test_comprehensive_optimization_analysis ... ok
[INFO] [stdout] test test_complexity_analysis_scaling ... ok
[INFO] [stdout] test test_expression_metrics_calculation ... ok
[INFO] [stdout] test test_expression_metrics_for_different_types ... ok
[INFO] [stdout] test test_improvement_metrics_calculation ... ok
[INFO] [stdout] test test_memory_usage_estimation ... ok
[INFO] [stdout] test test_memory_usage_estimation_accuracy ... ok
[INFO] [stdout] test test_optimization_stats_creation ... ok
[INFO] [stdout] test test_optimization_stats_summary ... ok
[INFO] [stdout] test test_expression_type_classification_comprehensive ... ok
[INFO] [stdout] test test_significant_improvement_detection ... ok
[INFO] [stdout] test test_optimization_stats_effectiveness_scoring ... ok
[INFO] [stdout] test test_improvement_metrics_edge_cases ... ok
[INFO] [stdout] test test_performance_benchmark ... ok
[INFO] [stdout] test test_performance_benchmark_detailed ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_performance_benchmark_detailed stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_performance_benchmark_detailed' (193) panicked at tests/optimization_tests.rs:435:4:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "Generate Truth Table"
[INFO] [stdout]  right: "Find Prime Implicants"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5869e9e95618 - std[d054f6f42beb1baa]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5869e9e95618 - std[d054f6f42beb1baa]::backtrace_rs::backtrace::trace_unsynchronized::<std[d054f6f42beb1baa]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5869e9e95618 - std[d054f6f42beb1baa]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5869e9e95618 - <<std[d054f6f42beb1baa]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[5a1c3e9896636f3a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5869e9ea991a - <core[5a1c3e9896636f3a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5869e9ea991a - core[5a1c3e9896636f3a]::fmt::write
[INFO] [stdout]    6:     0x5869e9e99e32 - std[d054f6f42beb1baa]::io::default_write_fmt::<alloc[154f689e5dd3bae5]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5869e9e99e32 - <alloc[154f689e5dd3bae5]::vec::Vec<u8> as std[d054f6f42beb1baa]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5869e9e746c6 - <std[d054f6f42beb1baa]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5869e9e746c6 - std[d054f6f42beb1baa]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5869e9e8daf9 - std[d054f6f42beb1baa]::panicking::default_hook
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5869e9e0be3c - <alloc[154f689e5dd3bae5]::boxed::Box<dyn for<'a, 'b> core[5a1c3e9896636f3a]::ops::function::Fn<(&'a std[d054f6f42beb1baa]::panic::PanicHookInfo<'b>,), Output = ()> + core[5a1c3e9896636f3a]::marker::Send + core[5a1c3e9896636f3a]::marker::Sync> as core[5a1c3e9896636f3a]::ops::function::Fn<(&std[d054f6f42beb1baa]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5869e9e0be3c - test[fad20673b750c10e]::test_main_inner::<test[fad20673b750c10e]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5869e9e8dcb2 - <alloc[154f689e5dd3bae5]::boxed::Box<dyn for<'a, 'b> core[5a1c3e9896636f3a]::ops::function::Fn<(&'a std[d054f6f42beb1baa]::panic::PanicHookInfo<'b>,), Output = ()> + core[5a1c3e9896636f3a]::marker::Send + core[5a1c3e9896636f3a]::marker::Sync> as core[5a1c3e9896636f3a]::ops::function::Fn<(&std[d054f6f42beb1baa]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5869e9e8dcb2 - std[d054f6f42beb1baa]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5869e9e74782 - std[d054f6f42beb1baa]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5869e9e6c119 - std[d054f6f42beb1baa]::sys::backtrace::__rust_end_short_backtrace::<std[d054f6f42beb1baa]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5869e9e7549d - __rustc[7ab284efd7f33ea8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5869e9eaa06c - core[5a1c3e9896636f3a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5869e9ea9f23 - core[5a1c3e9896636f3a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x5869e9dfacc0 - core[5a1c3e9896636f3a]::panicking::assert_failed::<alloc[154f689e5dd3bae5]::string::String, &str>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5869e9df0473 - optimization_tests[814e9e934096450d]::test_performance_benchmark_detailed
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/optimization_tests.rs:435:4
[INFO] [stdout]   22:     0x5869e9de8617 - optimization_tests[814e9e934096450d]::test_performance_benchmark_detailed::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/optimization_tests.rs:403:41
[INFO] [stdout]   23:     0x5869e9dfec36 - <optimization_tests[814e9e934096450d]::test_performance_benchmark_detailed::{closure#0} as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5869e9dfef1b - <fn() -> core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5869e9dfef1b - test[fad20673b750c10e]::__rust_begin_short_backtrace::<core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>, fn() -> core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x5869e9e0c795 - test[fad20673b750c10e]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x5869e9e0c795 - <core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5869e9e0c795 - std[d054f6f42beb1baa]::panicking::catch_unwind::do_call::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>, core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5869e9e0c795 - std[d054f6f42beb1baa]::panicking::catch_unwind::<core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>, core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5869e9e0c795 - std[d054f6f42beb1baa]::panic::catch_unwind::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>, core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5869e9e0c795 - test[fad20673b750c10e]::run_test_in_process
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x5869e9e0c795 - test[fad20673b750c10e]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x5869e9e072f4 - test[fad20673b750c10e]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x5869e9e072f4 - std[d054f6f42beb1baa]::sys::backtrace::__rust_begin_short_backtrace::<test[fad20673b750c10e]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5869e9e0f812 - std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked::<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5869e9e0f812 - <core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5869e9e0f812 - std[d054f6f42beb1baa]::panicking::catch_unwind::do_call::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5869e9e0f812 - std[d054f6f42beb1baa]::panicking::catch_unwind::<(), core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5869e9e0f812 - std[d054f6f42beb1baa]::panic::catch_unwind::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5869e9e0f812 - std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked::<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5869e9e0f812 - <std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1} as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5869e9e94f7f - <alloc[154f689e5dd3bae5]::boxed::Box<dyn core[5a1c3e9896636f3a]::ops::function::FnOnce<(), Output = ()> + core[5a1c3e9896636f3a]::marker::Send> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   43:     0x5869e9e94f7f - <std[d054f6f42beb1baa]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7a1e5ccb0aa4 - <unknown>
[INFO] [stdout]   45:     0x7a1e5cd3da64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_performance_benchmark_detailed
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 17 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test optimization_tests`
[INFO] running `Command { std: "docker" "inspect" "85fc8abc1dbf840c4fa0b5c31ebbeeeba9f46ec7ad65a644907d64d71d148803", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85fc8abc1dbf840c4fa0b5c31ebbeeeba9f46ec7ad65a644907d64d71d148803", kill_on_drop: false }`
[INFO] [stdout] 85fc8abc1dbf840c4fa0b5c31ebbeeeba9f46ec7ad65a644907d64d71d148803
